ReactのMain Concept:2. Introducing JSX
テンプレート言語っぽいけどJavaScriptがつかえるよ
Raectのコンポーネントをつくるよ
どうしてJSX?
関心の分離をマークアップとロジックを別ファイルにすることで行う方法もある 一方、Reactではその両方を含むコンポーネントと呼ばれる疎結合な単位で関心の分離を行う componentの章でまた議論する
{}(curly braces)の中ではJSが使える
JSXでattributeを使う
divにattributeを渡す例:const element = <div tabIndex="0"></div>;
attributeでは""と{}の両方を同時に使うことはできない
camelCase
JSXでは子要素を書くことができる
レンダリングされるまえにエスケープする(すべてstringになる)のでユーザ入力をそのまま出してもOK
JXSはBabelによってReact.createElement()をつかった形式に変換されるので両者は同じ意味になる React.createElement()は基本的にはReact elementsと呼ばれるオブジェクトを生成する
Reactはこのオブジェクトを読んでDOMを作成(更新)する